package tech.aistar.mapper;

import tech.aistar.model.entity.Job;

import java.util.List;

public interface JobMapper {

    /**
     * 通过职位名进行模糊查询
     * @return
     */
    List<Job> getLikeName(String name);

    List<Job> getAllJob();


    /**
     * 根据公司id查询工作
     * @param companyId
     * @return
     */
    List<Job> getAllByCompanyId(Integer companyId);


    /**
     * 根据hr的id查询
     * @param hrId
     * @return
     */
    List<Job> getAllByHrId(Integer hrId);

    /**
     * 更具id查询job
     * @param id
     * @return
     */
    Job getById(Integer id);

    List<Job> getByIds(List<Integer> ids);

    /**
     * 更新职位
     * @param job
     * @return
     */
    int upDateJob(Job job);

    /**
     * 增加职位
     * @param job
     * @return
     */
    int addJob(Job job);


    /**
     * hr查找被投递职位
     * @param id
     * @return
     */
    List<Job> getApplyedByHrId(Integer id);



    /**
     * 根据客户id查找投递工作
     * @param id
     * @return
     */
    List<Job> getApplyedByCustomerId(Integer id);


    /**
     * 根据学历要求查找职位
     * @param SchoolLevel
     * @return
     */
    List<Job> getBySchoolLevel(Integer SchoolLevel);


    /**
     * 根据工作经验要求查找职位
     * @param WorkTimeNeed
     * @return
     */
    List<Job> getByWorkTimeNeed(Integer WorkTimeNeed);

    /**
     * 根据客户id查询该客户收藏的job
     * @param id
     * @return
     */
    List<Job> getLovedByCustomerId(Integer id);


    /**
     * 根据城市找工作
     * @param city
     * @return
     */
    List<Job> getBycity(String city);


    List<Job> getByMinMoney(Integer money);

}
